When working with large sets of data, such as a database of documents or web pages on the Internet, the volume of available data can make finding information of interest difficult. Various methods of searching are used in an attempt to find relevant information in such stores of information. Some of the best known systems are internet search engines, such as Yahoo (trademark) and Google (trademark) which allow users to perform keyword-based searches. These searches typically involve matching keywords entered by the user with keywords in an index of web pages.
It is known for search engines to generate revenue by selling certain keywords to advertisers. These advertisers pay for a common search term, such as “bank” and have their ads shown to users when that word is entered in a query.
However, if the advertiser for the keyword “bank” is a financial institution, then their advertisements will appear even for other meanings of the word “bank” such as “to turn an aircraft.” Some advertisers purchase a sequence of keywords such as “bank account” to better target their advertising. However, such sequences will match fewer results, so that a query for “bank loan” would not match “bank account.”
There is a need for a system and method which addresses deficiencies in the prior art.